The need to communicate data is a necessary adjunct of modem society. The communication of data is effectuated through the use of a communication system. As scientific discovery, and technological advancement, has permitted, new types of communication systems have been developed and implemented. Such technological advancements continue. And, new, as well as improvements to existing, communication systems are regularly made.
Advancements in digital communication techniques are amongst the technological advancements that have permitted the introduction of new types of communication systems, capable of providing many varied communication services.
A radio communication system is exemplary of a communication system that has benefited as a result of advancements in digital communication techniques, as well as other technological advancements. In a radio communication system, communication channels are defined upon a radio-link that forms at least a portion of a communication path extending between the communication stations of the radio communication system.
A radio communication system is generally implementable more economically than a wireline counterpart as the infrastructure costs associated with a radio communication system are generally less than the costs associated with installation of a network infrastructure of a wireline communication system. Additionally, a radio communication system can be implemented as a mobile communication system, permitting of mobile communications. Communications in such a system are possible, from and between, locations at which the use of a conventional, wireline communication system would be impractical.
The use of digital communication techniques in a communication system permits improved efficiency of communications relative to the use of conventional, analog communication techniques. Typically, when digital communication techniques are utilized, data that is to be communicated is digitized and then formatted, such as into packetized form as data packets.
Protocols have been developed, and standardized, relating to packet-based communications. The internet protocol (IP) is exemplary of a packet-based communication standard, regularly utilized to effectuate packet-based communications. Standards relating to the internet protocol include, e.g., the IPv4 and IPv6 versions. In these versions of the internet protocol, operational parameters, as well as logical configuration of the IP network are defined.
The IPv4 protocol was developed, initially, primarily for use in a wireline network, such as an office intranet, or a network connected through the internet. A logical device, referred to as a node, is identified by an IP address.
When the node is a device that is fixedly connected by way of a wireline connection to other portions of a communication network, the node is fixedly connected in a network, or subnetwork.
Increasingly, though, packet-based communications, including communications effectuated by way of the internet, are effectuated with mobile nodes rather than fixed nodes. The routing of data to a mobile node becomes more problematical, particularly when the mobile node roams into a subnetwork, referred to as a visited or foreign network, other than the network, referred to as the home network, with which the mobile node is normally associated. The mobile node shares its subnet prefix with the home network.
Additionally, due to the paucity of IPv4 addresses, networks are sometimes configured as private networks and nodes, including mobile nodes, thereof, are configured with private addresses. The IETF (internet engineering task force) request for comments (RFC) 1918 provides a definition of private addresses, which are unregistered IPv4 addresses that can be used by any network. A network configuration that utilizes private addresses is well-suited for networks that do not require extensive external connections, such as to the internet.
A node, or host, of a private network cannot communicate directly with nodes or devices external to the private network because the IP address associated therewith is a private address. Private addresses are nonroutable. At times herein, a node designed with a private address is referred to as a private node. When a private node is to communicate with a node external to the private network, i.e., an external node, a network address translation (NAT) device is used to map the private IP address of the node to an external address, which is reserved by NAT exclusively for this purpose.
Various implementations of NAT devices are used. For instance, traditional (outbound) NAT devices are sometimes used. Such devices provide only for unidirectional communication of data outbound from the private network. A device, referred to as a twice NAT device translates both source and destination addresses as an IP packet crosses addresses realms. And, an NAPT (network address port translation) device performs translation operations in which a set of internal nodes are able to share a single external address and be identified by a transport protocol identifier, e.g., TCP (transport control protocol) and UDP port numbers.
One problem of significance occurs when a private node roams to a foreign network, or otherwise crosses networks, during communications with another node. A Mobile IPv4 standard has been promulgated that is intended to permit a mobile node (MN) to communicate with other nodes by using the home IP address of the mobile node, even while the mobile node roams outside of its home network. IP packet tunneling is utilized to permit such operation. For example, IP-in-IP encapsulation between a Mobile IP home agent (HA) located at the home network associated with the mobile node, and the care-of address (CoA) of the mobile node can be used to tunnel data packets.
However, tunneling may fail if an NAPT device is positioned in the path of the tunneling. The tunneling mechanism that is utilized, e.g., IP-in-IP encapsulation, generally does not contain enough information to permit the NAPT device to make a unique address translation. Additionally, private address conflict might exist. That is, more than one node might have the same private IP address. If a private mobile node roams into a foreign network and its home address IP address is in conflict with the address of a fixed or mobile node in the foreign network or other visiting mobile node(s), then an address conflict results. When an address conflict occurs, the Mobile IP foreign agent of the foreign network is unable to route incoming data packets to the appropriate receiving node. Additionally, the foreign agent is unable correctly to route outgoing packets from the mobile node, involved in the address conflict, to the appropriate home agent associated with the mobile node.
Various proposals have been set forth to attempt to overcome this problem. For instance, a reverse tunneling (RT) mechanism has been proposed. A reverse tunneling mechanism is proposed, for instance, in RFC 3024 promulgated by the IETF. And, a private address extension to Mobile IP (MIP TUP) has been proposed. And, Mobile IP NAT/NAPT device traversal using UDP tunneling (MIP UDP) has also been proposed.
Each of the proposed solutions is inadequate in some regard. For instance, the reverse tunneling mechanism (RT) is available for use in reverse NAT device traversal only. In the presence of an NAPT device, the encapsulation method used by the reverse tunneling mechanism does not include the source port number of the mobile node that is needed by the NAPT device for unique address translation of the care-of address of the mobile node. Additionally, the reverse tunneling mechanism does not deal with the problem associated with address conflicts.
And, although the MIP TUP mechanism provides for NAT device traversal and also provides a solution to the address conflict problem, this mechanism fails to support NAPT device traversal. Additionally, the MIP TUP mechanism provides for a nested, two-level, tunnel from the home agent to the foreign agent, necessitating a large overhead component to forward data packets to the mobile node.
The MIP UDP tunneling mechanism provides both NAT device and NAPT device traversal as well as also avoids the address conflict problem. However, this mechanism works only for mobile nodes operating with a co-located care-of address. In addition, it requires mobile nodes, including public mobile nodes, to employ UDP tunneling for so long as the mobile nodes are communicating “behind” the NAT device or NAPT device. If the foreign network has a foreign agent configured with a public address, then the public mobile nodes are able to use regular Mobile IP forward and reverse tunneling of data traffic, and thus avoid the overhead necessitated of UDP tunneling.
Accordingly, if a manner could be provided by which better to provide for routing of data packets in a packet radio communication system that provides for mobile node mobility, improved communications would be possible.
It is in light of this background information related to communications in a packet radio communication system that the significant improvements of the present invention have evolved.